Soru & Cevap

Play Console Çökme ve ANR ler Hakkında

09.11.2020 - 03:14

Merhaba 

Google Play de uygulamam yayınlandı ama bazı cihazlarda uygulama çöküyor. Bununla ilgili play console da çökmeler ve anr ler kısmında şu şekilde bir geri bildirim var fakat bu çökmenin neden kaynaklandığını anlamadım. Bu konuda yardımcı olur musunuz?


java.lang.IllegalArgumentException
Daha az gösterexpand_less
java.lang.IllegalArgumentException: at android.graphics.BaseCanvas.onHwBitmapInSwMode (BaseCanvas.java:683) at android.graphics.BaseCanvas.throwIfHwBitmapInSwMode (BaseCanvas.java:690) at android.graphics.BaseCanvas.throwIfCannotDraw (BaseCanvas.java:94) at android.graphics.BaseCanvas.drawBitmap (BaseCanvas.java:152) at android.graphics.Canvas.drawBitmap (Canvas.java:1588) at android.graphics.drawable.BitmapDrawable.draw (BitmapDrawable.java:548) at android.widget.ImageView.onDraw (ImageView.java:1434) at android.view.View.draw (View.java:23191) at android.view.View.draw (View.java:23063) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at androidx.constraintlayout.widget.ConstraintLayout.dispatchDraw (ConstraintLayout.java:1882) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at androidx.fragment.app.FragmentContainerView.drawChild (FragmentContainerView.java:235) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at androidx.fragment.app.FragmentContainerView.dispatchDraw (FragmentContainerView.java:223) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at androidx.constraintlayout.widget.ConstraintLayout.dispatchDraw (ConstraintLayout.java:1882) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at androidx.coordinatorlayout.widget.CoordinatorLayout.drawChild (CoordinatorLayout.java:1277) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at androidx.drawerlayout.widget.DrawerLayout.drawChild (DrawerLayout.java:1478) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23194) at android.view.View.draw (View.java:23063) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23061) at android.view.ViewGroup.drawChild (ViewGroup.java:5230) at android.view.ViewGroup.dispatchDraw (ViewGroup.java:4987) at android.view.View.draw (View.java:23194) at com.android.internal.policy.DecorView.draw (DecorView.java:1117) at android.view.ViewRootImpl.drawSoftware (ViewRootImpl.java:4400) at android.view.ViewRootImpl.draw (ViewRootImpl.java:4308) at android.view.ViewRootImpl.performDraw (ViewRootImpl.java:4051) at android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:3324) at android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:2204) at android.view.ViewRootImpl$TraversalRunnable.run (ViewRootImpl.java:9003) at android.view.Choreographer$CallbackRecord.run (Choreographer.java:996) at android.view.Choreographer.doCallbacks (Choreographer.java:794) at android.view.Choreographer.doFrame (Choreographer.java:729) at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:981) at android.os.Handler.handleCallback (Handler.java:883) at android.os.Handler.dispatchMessage (Handler.java:100) at android.os.Looper.loop (Looper.java:237) at android.app.ActivityThread.main (ActivityThread.java:7860) at java.lang.reflect.Method.invoke (Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1075)
 

64 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user gmyucalfarukeren
gmyucalfarukeren
19.02.2023 - 05:26

Merhaba Mehmet Bey, 

Bu hatanın neden kaynaklandığını doğrudan söylemek zor olsa da, hatanın yığın izleme bilgilerine bakarak birkaç olası nedeni tahmin edebilirim

Bu hata, görüntüleri çizmek için kullanılan grafik nesneleri ile ilgili bir sorun olduğunu gösteriyor. Hata, ImageView nesnesi üzerinde bir bitmap çizilirken oluşuyor gibi görünüyor

Bunun birkaç olası nedeni olabilir. Örneğin, görüntü belirtilen boyutlarda değilse bu hataya neden olabilir. Ya da bitmapin bellekte uygun şekilde yüklenmemesi de bu hatayı tetikleyebilir. Ayrıca, cihazda bir bellek sınırlaması veya grafik bellek sorunu da hataya neden olabilir

Bu hata, bir ANR (Uygulama Yanıt Vermiyor) hatası ile birlikte rapor edilmediğinden, uygulamanın donmadığı, ancak sadece çöktüğü anlamına gelir. Bu durumda, hatanın oluştuğu kodu incelemeli ve hatanın neyin neden olduğunu anlamak için adım adım ayıklama yaparak sorunu çözmeye çalışmalısınız

Play Console'da, hatanın meydana geldiği cihazların modellerine ve işletim sistemlerine bakabilirsiniz. Bu cihazlar için farklı nedenlerden dolayı hata oluşabilir. Bazı cihazların bellek sınırlamaları veya grafik özellikleri diğerlerinden farklı olabilir. Bu nedenle, farklı cihazlar üzerinde uygulamanızın test edilmesi ve hataların oluştuğu cihazlarda sorunu yeniden oluşturmak için testler yapılması faydalı olabilir

Ayrıca, uygulamanızın kodunda potansiyel hata kaynaklarını aramak ve bunları gidermek de hatanın nedenini anlamaya yardımcı olabilir. Örneğin, bitmaplerin yüklenmesi ve kullanımı ile ilgili kodu kontrol edebilirsiniz

Sonuç olarak, hata raporlarını analiz etmek, olası nedenleri incelemek ve uygulamanın kodunu gözden geçirmek, sorunu çözmek için ilk adımlardır. Bu adımlar sorunu çözemezse, daha ayrıntılı bir ayıklama işlemi yapmak ve uygun çözümü bulmak için geliştirme ekibi veya bir uzman yardımı almak gerekebilir